/*
 * @Author: Aro
 * @Date: 2021-10-12 13:52:27
 */

// 给定两个大小分别为 m 和 n 的正序（从小到大）数组 nums1 和 nums2。请你找出并返回这两个正序数组的 中位数 。
// 归并排序 按位运算
/**
 * @param {number[]} nums1
 * @param {number[]} nums2
 * @return {number}
 */
var findMedianSortedArrays = function (nums1, nums2) {
  var m = nums1.length, n = nums2.length, i = 0, j = 0, resIdx = 0;
  var res = [];
  while (i < m && j < n) {
    if (nums1[i] <= nums2[j]) res[resIdx++] = nums1[i++];
    else res[resIdx++] = nums2[j++];
  }

  while (i < m) res[resIdx++] = nums1[i++];
  while (j < n) res[resIdx++] = nums2[j++];

  if ((res.length & 1) == 1) return res[res.length >> 1];
  return (res[res.length >> 1] + res[(res.length >> 1) - 1]) / 2.0;
};

// [1, 3, 5, 7]
// [1, 2, 3, 4, 5, 6]
// 1,1,2,3,3,4,5,5,6,7

console.log("====== start ======");

let test1 = findMedianSortedArrays([1, 3, 5, 7], [2, 3]);
console.log(test1);

console.log("====== end ======");